package com.info.zhiduoduo.core.service;

import com.info.zhiduoduo.common.constants.SmartResult;
import com.info.zhiduoduo.common.formbean.BaseSimpleFormBean;
import com.info.zhiduoduo.core.formbean.ListPartnerStudioWithdrawsFromBean;
import com.info.zhiduoduo.repository.dto.partner.PartnerStudioWithdrawDto;
import com.info.zhiduoduo.repository.entity.partner.PartnerWithdraw;

public interface CorePartnerService {

	/**
	 * 提现操作
	 *
	 * @param wdid      大于0表示重新提现，等于0表示新建提现
	 * @param partnerid
	 * @return
	 */
	SmartResult handleWithdrawInternal(int wdid, int partnerid);

	/**
	 * 获取合伙人工作室模式提现申请
	 *
	 * @param formBean
	 * @return
	 */
	SmartResult<PartnerStudioWithdrawDto> listPartnerStudioWithdraws(BaseSimpleFormBean<ListPartnerStudioWithdrawsFromBean> formBean);

	/**
	 * 处理提现结果
	 *
	 * @param withdraw
	 * @param orderState
	 * @param errorcode
	 * @param errormsg
	 */
	void handleWithdrawState(PartnerWithdraw withdraw, String orderState, String errorcode, String errormsg);

	boolean handleDaysWithdrawTradeState(PartnerWithdraw withdraw, String orderState, String responseCode, String responseRemark);

	boolean handleZhaoShangsWithdrawTradeState(PartnerWithdraw withdraw, String orderState, String responseCode, String responseRemark);
}
